import 'package:common_utils/common_utils.dart';
import 'package:decimal/decimal.dart';

class Test{
  String time;
  String data;

  set (String time,String data){
    this.time=time;
    this.data=data;
  }

}

void main(){
  String s="152145364+-1.0252e+2115+154564*24324--23+234+24324e+23/4";
  List opList = s.split(new RegExp(r"[0-9|\.].*?|e\+"));

  List list = s.split(new RegExp(r"(?<=[^!e\+])\+|(?<=[^!\+\-])\-|\*|\/"));
//  opList.removeWhere((item) => item == '' || item == null);

  print(list);
  print(opList);


  RegExp mobile = new RegExp(r"\*\*|\+\+|---|\/\/");
  print(mobile.hasMatch(s));


  print(1/3);
  print(Decimal.parse(1.toString())/Decimal.parse(3.toString()));
  print(Decimal.parse(1.15454786793254564.toString())/Decimal.parse(3.5989898659658.toString()));
  print(Decimal.parse(4564786785678798.toString())*Decimal.parse(35989892342423425823424234234.0.toString()));
  print(1-1.1111);
  print((1.0-1.1111).round());
  print((1-1.1111).toStringAsFixed(10));
  print((1-1.1111).toStringAsFixed(20));
  print(Decimal.parse(1.toString())-Decimal.parse(1.1111.toString()));

  print(NumUtil.add(1, 1.111));
  print(NumUtil.subtract(1, 1.111));
  print(NumUtil.multiply(1.475476487587587, 1.111));
  print(NumUtil.multiply(1475476487587587, 112342423423411));
  print(NumUtil.divide(1, 3));
  print(NumUtil.divide(1, 3454547587587587));



}



//void main(){
//
//
//
//  List<Test> list=new List();
//
//  Test test=new Test();
//  test.set("sss", "sdfsdf");
//
//  list.add(test);
//
//  print(list[0].time);
//  print(list.toString());
//  print("sdfsdfssssssss");
//}